The technique of reconstructing a cross-sectional image of an object from multiple projections is broadly referred to as tomography. When such reconstructing of a cross-sectional image is performed with the aid of a processor-based device (or “computer”), the technique is broadly referred to as computed (or computerized) tomography (CT). In a typical example application, a radiation source projects X-wavelength radiation through an object onto an electronic sensor (or “detector”) array. By providing relative movement between one or more of the object, the source, and the sensor array, multiple views are obtained. An image of a slice through the object or a three-dimensional (“3D”) image of the object may then be approximated by use of proper mathematical transforms of the multiple views. That is, cross-sectional images of an object may be reconstructed, and in certain applications such cross-sectional images may be combined to form a full 3D image of the object.
Perhaps the best known practical application of tomography is the medical computerized tomography scanner (CT Scanner, also called computer-aided tomography or computerized axial tomography (CAT)). For instance, cross-sectional image reconstruction from radiographic (e.g., X-ray) images is commonly used in medical applications to generate a cross-sectional image (and/or 3D view) of the human body or part of the human body from X-ray images. In those applications, speed of reconstruction of the cross-sectional images has not traditionally been very important. However, as medical procedures continue to evolve, certain medical applications are beginning to desire fast reconstruction of cross-sectional images. For instance, real-time X-ray imaging is increasingly being desired by medical procedures, such as many electro-physiologic cardiac procedures, peripheral vascular procedures, percutaneous transluminal catheter angioplasty (PTCA) procedures, urological procedures, and orthopedic procedures, as examples.
Tomography is also of interest in automated inspection of industrial products. For instance, reconstruction of cross-sectional images from radiographic (e.g., X-ray) images has been utilized in quality control inspection systems for inspecting a manufactured product, such as electronic devices (e.g., printed circuit board assemblies). That is, tomography may be used in an automated inspection system to reconstruct images of one or more planes (which may be referred to herein as “depth layers” or “cross-sections”) of an object under study in order to evaluate the quality of the object (or portion thereof). For instance, a printed circuit board assembly (or other object under study) may comprise various depth layers of interest for inspection. As a relatively simple example, a dual-sided printed circuit board assembly may comprise solder joints on both sides of the board. Thus, each side of the circuit board assembly on which the solder joints are arranged may comprise a separate depth layer of the board. Further, the circuit board assembly may comprise surface mounts (e.g., a ball grid array of solder) on each of its sides, thus resulting in further depth layers of the board that may be of interest.
The object under inspection may be imaged from various different angles of view (e.g., by exposure to X-rays at various different angles) resulting in radiographic images of the object, and such radiographic images may be processed to reconstruct an image of a depth layer (or “slice”) of the object. That is, X-rays may be applied from an X-ray source to an object under inspection at various different angles of view, and detectors arranged on the side of the object opposite the X-ray source may receive the X-rays and measure the X-ray transmissiveness of the object. Such measurement information may be output by the radiographic imaging device as digital information (e.g., data representing “pixels” of the object). Such radiographic image data (pixels) may be input to an image reconstructor, which uses the information to reconstruct cross-sectional images of the object under inspection. Thereafter, the resulting cross-sectional images may, in some inspection systems, be displayed layer by layer, and/or such cross-sectional images may be used to reconstruct a full 3D visualization of the object under inspection.
Automated inspection systems that provide reconstruction of cross-sectional images of an object under inspection from radiographic (e.g., X-ray) images captured for such object have been unable to provide quality analysis quickly enough to keep up with high beat-rate production lines. Because of cost, speed, and/or the mechanics required to obtain multiple radiographic images (e.g., images at various different angles) and compute several cross-sectional images, many of the traditional approaches to tomography (such as those traditionally used for medical applications that do not require fast reconstruction) are not suitable for a manufacturing environment. For example, a printed circuit board assembly line generally moves very fast. For instance, printed circuit boards may be spaced merely seconds apart on a production line, and therefore, to implement an automated X-ray inspection system in a production setting, such inspection system needs to be very fast. Ideally, the inspection process is in real time, as part of a feedback control system for the manufacturing process. In some manufacturing environments there is a need to verify the integrity of tens of thousands of solder joints within one minute or less. Typically, current automated X-ray inspection systems limit the speed at which a production line may operate, and thus automated X-ray inspection systems are currently primarily used for inspecting relatively specialized, high-cost boards that are typically manufactured in relatively low quantities, wherein speed of the manufacturing line is not so important. Of course, automated X-ray inspection systems would likely be used more often if they could operate fast enough to keep up with high-throughput production lines.
Within X-ray absorption tomography, a number of imaging techniques are applicable to reconstruction of cross-sectional slices. One imaging technique is known as laminography. In laminography, the X-ray source and detector array are moved in a coordinated fashion relative to the object to be viewed so that portions of an object outside a selected focal plane lead to a blurred image at the detector array (see, for example, U.S. Pat. No. 4,926,452). Focal plane images are reconstructed in an analog averaging process. An example of a laminography system that may be utilized for electronics inspection is described further in U.S. Pat. No. 6,201,850 entitled “ENHANCED THICKNESS CALIBRATION AND SHADING CORRECTION FOR AUTOMATIC X-RAY INSPECTION.”
Another imaging technique is known as tomosynthesis. Tomosynthesis is an approximation to laminography in which multiple projections (or views) are acquired and combined. As the number of views increases, the resulting combined image generally approaches that obtained using laminography with the same geometry. A differentiating feature of tomosynthesis from the above-described laminographic technique is that in tomosynthesis X-ray images obtained from different directions (different angles of view) can be manipulated (e.g., overlapped with different spatial shifts and their brightness averaged) to produce a variety of cross-sections. In other words, one set of X-ray images can be used to obtain multiple cross-sections of an object under inspection (e.g., cross-sections of the object at different heights). Tomosynthesis may be performed as an analog method, for example, by superimposing sheets of exposed film. Tomosynthesis may, instead, be performed as a digital method. In digital tomosynthesis, the individual views are divided into pixels, and digitized and combined via computer software.
Three-dimensional (3D) computed tomography has the potential for more accurate image reconstruction than laminography or tomosynthesis, but at the expense of speed (computation time). Three-dimensional computed tomography typically requires many projections, and is computationally intensive. One approach to 3D computer-aided tomography is to position an X-ray source having a cone-shaped 3D ray output on one side of an object to be viewed, and to position a two-dimensional (2D) array of detectors (e.g., charged-coupled devices (“CCDs”)) on the opposite side of the object to be viewed, and to synchronously move the source/array relative to the object. There are many suitable scan paths. For complete reconstruction of an arbitrary object, the scan path must surround the object. For example, the source may be moved around the object to be viewed, or the source may be moved along a helical path or other path along a cylinder surrounding the object to be viewed. This approach, called cone-beam tomography, is preferable in many cases for reconstructing 3D images, and is potentially preferable for electronic assembly analysis (e.g., for electronic assembly analysis) because of the resulting image quality.
A theoretical mathematical approach to reconstructing an object from its projections was developed by J. Radon in 1917, and the basic transforms are now referred to as Radon transforms. More recently, researchers have proposed various methods for cone-beam reconstruction. See, for example:                A. K. Louis and F. Natterer, “Mathematical Problems of Computerized Tomography,” Proceedings of the IEEE, Vol. 71, No. 3, pp 379-389 (March 1983);        R. M. Lewitt, “Reconstruction Algorithms: Transform Methods,” Proceedings of the IEEE, Vol. 71, No. 3, pp 390-408 (March 1983);        Y. Censor, “Finite Series-Expansion Reconstruction Methods,” Proceedings of the IEEE, Vol. 71, No. 3, pp 409-419 (March 1983);        B. D. Smith, “Cone-beam tomography: recent advances and a tutorial review,” Optical Engineering, Vol. 29 No. 5, pp 524-534 (May 1990); and        C. Jacobson, “Fourier Methods in 3D-Reconstruction from Cone-Beam Data,” Ph.D. Dissertation, Dissertation No. 427, Department of Electrical Engineering, Linkoping University, Linkoping, Sweden (1996).        
In general, each of the above methods involves various trade-offs such as image quality (approximations, noise, blurring, and artifacts) versus computation time and difficulty of obtaining the required views.
The cone-beam methods typically result in a set of planar images. Some kind of rectangular detector array is typically used, which captures a set of pixels allocated on a plane instead of along a single line. Before development of the cone-beam methods, imaging techniques, such as the well-known fan-beam methods, acquired only one-dimensional (“1D”) projections. With the cone-beam methods that utilize a detector array, 2D images are captured. The 2D images that are captured are comparable to those captured by digital cameras, wherein a matrix of pixels are acquired for an object being imaged. The captured 2D images may then be processed to combine them (e.g., using a Back Projection technique) to reconstruct the 3D object under inspection (or portion thereof).
Tomographic techniques, such as tomosynthesis or 3D computed tomography, typically require many 2D image projections (at many different angles of view), and are typically computationally intensive for reconstructing 3D images from the 2D image data. Accordingly, an undesirably large amount of data storage capacity may be required in a tomography system for storing the large amount of 2D image data (pixels) acquired, and the efficiency of processing the 2D image data for reconstructing the 3D image data becomes a concern.
Most radiographic imaging systems traditionally used for inspection are analog machines, such as those used for the above-described laminography techniques. Without substantial upgrades to these analog imaging systems, it is unlikely that they can achieve the image processing speed desired for high-throughput production environments. Accordingly, digital-based imaging systems, such as the above-described cone-beam tomography system, are beginning to be used within inspection systems. Digital-based imaging systems typically generate an enormous amount of image data that is to be managed and processed for performing reconstruction of cross-sectional images. Accordingly, a desire exists for a cost-effective technique that is capable of processing the image data from such a digital-based imaging system in an efficient manner.
Often, reconstruction of cross-sectional images of an object is performed incrementally for regions of the object. Generally, a “region” of an object is a portion that can be imaged at one time. For example, an entire circuit board assembly is typically not imaged at once by a radiographic imaging system because of constraints of the detector array, the X-ray source, etc., but rather the circuit board assembly is typically logically divided into regions for imaging one small portion of the board (e.g., a square inch area) at a time. Typically, radiographic images of a region of an object are acquired at various angles by an X-ray imaging system for reconstructing one or more cross-sectional images of the region. That is, images from various different angles of a region are combined together in some special way (e.g., using mathematical transforms) by an image reconstruction unit to result in reconstructed cross-sectional image(s) of the region. Acquiring the radiographic images of a region at the various angles is often a time consuming task because it involves moving one or more of the X-ray source, detector array, and object around to achieve the different angles of view.
It should be recognized that acquiring radiographic images of a region of an object at various different angles may result in acquisition of a substantial amount of radiographic image data for each region. Typically, reconstruction is performed incrementally as images of various views are collected, which avoids excessive storage of captured pixel data. Incremental systems consecutively produce all images for one region of an object that are needed for reconstructing a cross-sectional image of that region before producing images for another region. The images of a first region of an object are sequentially processed and the result accumulated into a reconstruction of that region (i.e., reconstruction of one or more cross-sectional images desired for that region), and that reconstruction is output (or stored) before beginning processing for another region of the object. System resources are then reused for reconstructing the desired cross-sections of the next region.
Accordingly, in traditional inspection systems, radiographic images are acquired and processed to reconstruct cross-sections for one region of an object under inspection at a time. That is, a complete reconstruction of the desired cross-sectional images of one region of an object under inspection is performed before moving on to another region of the object.
A disadvantage of requiring consecutive views of a region to be acquired and reconstructed sequentially is that complex or overly constrained system arrangements may be required to orient the object, X-ray source, and/or X-ray detector array in the various ways necessary to produce the needed views (i.e., for the various different angles needed for the reconstruction process). This can increase cost and degrade performance of the image reconstruction system. Another disadvantage is that once imaging of a region is finished, the object must be moved and stabilized prior to starting the imaging of a new region. This non-smooth motion degrades performance and adds complexity.
It should be noted that, depending on the radiographic imaging system used, the object under inspection, X-ray source, X-ray detector array, or some combination of these items may be moved to achieve the various angles at which a region is to be imaged for reconstructing a cross-sectional image of such region. Since the relative positioning of these items is the significant factor for achieving the various angles for imaging a region, for simplicity herein the object is usually referred to as being moved relative to a stationary X-ray source and detector array, but any one or more of these items may be effectively moved in a radiographic imaging system to achieve the needed angles and thus the same concepts apply for other arrangements having similar relative motion of the object, X-ray source, and X-ray detector array.
To achieve high speed, incremental systems usually read image data either directly from a sensor array (or “detector array”) or read the data from a dedicated high-speed “frame buffer.” Frame buffers are a common way to interface an image sensor array (or detector array) to a computing device. Specifically, a frame buffer may be implemented to store data from a sensor array for one projection (i.e., a view captured for a given X-ray source, sensor array, and object positional arrangement). Frame buffers store data for only one projection at a time. To avoid overwriting unused data before it is used, the sensor array or frame buffer cannot be reused until the reconstruction unit has consumed the previously generated data. This limitation on sensor array and frame buffer reuse timing precludes many high-performance designs.